* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.con {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 100vh;
    line-height: 80px;
    font-size: 30px;
    // 文字之间的距离
    letter-spacing: 15px;
}

.menu-btn {
    position: absolute;
    right: 20px;
    top: 20px;
    z-index: 2;
    background: linear-gradient(200deg, #ec77ab, #7873f5);
    width: 50px;
    height: 50px;
    text-align: center;
    line-height: 50px;
    border-radius: 50%;
    color: #fff;
    font-size: 20px;
    cursor: pointer;
    transition: all 0.3s ease;
}
#menu_btn {
    display: none;
    &:checked {
        ~ .wrapper {
            clip-path: circle(75%);
        }
        ~ .menu-btn {
            color: #d576ba;
            background: #fff;
            // 选中后，改变图标
            i::before {
                content: '\f00d';
            }
        }
    }
}
.wrapper {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(200deg, #ec77ab, #7873f5);
    // 这一块其实是难点
    // 将元素切成一个圆形【25px表示圆的半径】 【calc(100% - 45px) 45px】表示圆心
    clip-path: circle(25px at calc(100% - 45px) 45px);
    transition: all 0.3s ease-in-out;
    ul {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        list-style: none;
        text-align: center;
        li {
            margin: 30px 0px;
            a {
                color: #fff;
                text-decoration: none;
                font-size: 30px;
                font-weight: 500;
                padding: 5px 50px;
                position: relative;
                line-height: 50px;
                &:hover {
                    color: #d576ba;
                    &::after {
                        visibility: visible;
                        transform: scaleY(1);
                    }
                }
                &::after {
                    content: '';
                    visibility: hidden;
                    position: absolute;
                    width: 100%;
                    height: 50px;
                    background: #fff;
                    z-index: -1;
                    border-radius: 50px;
                    left: 0px;
                    transform: scaleY(0.4);
                    transition: transform 0.3s ease;
                }
            }
        }
    }
}
